System and method for virtual laser marking

ABSTRACT

A virtual marking system is disclosed for simulating the performance of a limited rotation motor system. The virtual marking system includes a command generation unit, a limited rotation motor system unit, and an optical-mechanical modeling unit. The command generation unit is for receiving data representative of a pattern to be marked and for providing a set of commands for marking the pattern to be marked. The limited rotation motor system unit is for receiving the set of commands for marking the pattern to be marked and for providing optical element response signals that are representative of virtual positions of an optical element. The optical-mechanical modeling unit is for receiving the optical element response signals and for providing a virtual image of the pattern to be marked.

The present application claims priority to U.S. Provisional Patent Application Ser. No. 60/538,842 filed Jan. 23, 2004, and claims priority to U.S. Provisional Patent Application Ser. No. 60/575,255 filed May 28, 2004, and claims priority to U.S. Provisional Patent Application Ser. No. 60/613,962 filed Sep. 28, 2004.

BACKGROUND

The present invention generally relates to limited rotation motor systems, and relates in particular to systems for designing limited rotation motor systems.

Limited rotation motors generally include stepper motors and constant velocity motors. Certain stepper motors are well suited for applications requiring high speed and high duty cycle sawtooth scanning at large scan angles. For example, U.S. Pat. No. 6,275,319 discloses an optical scanning device for raster scanning applications.

Limited rotation motors for certain applications, however, require the rotor to move between two positions with a precise and constant velocity rather than by stepping and settling in a sawtooth fashion. Such applications require that the time needed to reach the constant velocity be as short as possible and that the amount of error in the achieved velocity be as small as possible. Constant velocity motors generally provide a higher torque constant and typically include a rotor and drive circuitry for causing the rotor to rotate about a central axis, as well as a position transducer, e.g., a tachometer or a position sensor, and a feedback circuit coupled to the transducer that permits the rotor to be driven by the drive circuitry responsive to an input signal and a feedback signal. For example, U.S. Pat. No. 5,424,632 discloses a conventional two-pole limited rotation motor.

A requirement of a desired limited rotation motor for certain applications is a system that is capable of changing the angular position of a load such as a mirror from angle A to angle B, with angles A and B both within the range of angular motion of the scanner, and both defined arbitrarily precisely, in an arbitrarily short time while maintaining a desired linearity of velocity within an arbitrarily small error. Both the minimum time of response of this system and the minimum velocity error are dominated by the effective bandwidth of the system. The effective bandwidth of the system, however, is governed by many factors, including the open loop gain of the system.

A limited rotation torque motor may be modeled or represented by a double-integrator model plus several flexible modes and low frequency non-linear effects. A typical closed-loop servo system for a galvanometer includes integral actions for low frequency uncertainties and a notch filter for high frequency resonant modes. System operation is chosen at the mid-frequency range where the system is well modeled by the rigid body. For a double integrator rigid body model, there is a direct relationship between the open-loop gain and the cross-over frequency on the frequency response plot. For example, an automatic tuning system for a servowriter head positioning system is disclosed in Autotuning of a servowriter head positioning system with minimum positioning error, Y. H. Huang, S. Weerasooriya and T. S. Low, J. Applied Physics, v.79 pp. 5674-5676 (1996).

FIG. 1 shows a marking system 10 that employs two limited rotation motors 12, 14 that are coupled to mirrors 13 and 15 respectively for guiding a laser beam 16 that is produced by a laser source 18 through an imaging lens 20 toward an imaging surface 22. The control of the x scan direction motor 12 and the y scan direction motor 14, as well as the turning on and off of the laser source 18 is provided by a controller 22. The controller 24 receives input commands 26 regarding a mark that is to be made on the imaging surface. The controller 24 then directs the x scanner 14 and the y-scanner 12 to move accordingly, and to turn on and off the laser source (e.g., to switch between a low and high or above a marking threshold value) responsive to the input command and responsive to the movement of the imaging surface at the target plane. The system may also include position detectors within each motor 12 and 14 that each provide position detection signals back to the controller 24.

Such limited rotation motors may be used, for example, in a variety of laser scanning applications, such as high speed surface metrology. Further laser processing applications include laser welding (for example high speed spot welding), surface treatment, cutting, drilling, marking, trimming, laser repair, rapid prototyping, forming microstructures, or forming dense arrays of nanostructures on various materials.

The processing speeds of such systems are typically limited by one of more of mirror speed, X-Y stage speed, material interaction and material thermal time constants, the layout of target material and regions to be processed, and software performance. Generally, in applications where one or more of mirror speed, position accuracy, and settling time are factors that limit performance, any significant improvement in scanning system open loop gain may translate into immediate throughput improvements.

In the limited rotation motor actuator, the open-loop gain is determined by the torque constant of the motor, the inertia of the mirror and rotor structure, and the gain characteristics of the power amplifier. Change in the design of the system, such as changes of head from one size to another size, may cause significant changes in total inertia, and consequently the open-loop gain. Such systems, however, typically must be designed and constructed in order to fully evaluate their performance.

There is a need, therefore, for an improved method for designing and evaluating limited rotation motor system, and more particularly, there is a need for the efficient and economical production of limited rotation motor systems that provides maximum performance for specific applications.

SUMMARY

The invention provides a virtual marking system for simulating the performance of a limited rotation motor system in accordance with an embodiment. The virtual marking system includes a command generation unit, a limited rotation motor system unit, and an optical-mechanical modeling unit. The command generation unit is for receiving data representative of a pattern to be marked and for providing a set of commands for marking the pattern to be marked. The limited rotation motor system unit is for receiving the set of commands for marking the pattern to be marked and for providing optical element response signals that are representative of virtual positions of an optical element. The optical-mechanical modeling unit is for receiving the optical element response signals and for providing a virtual image of the pattern to be marked.

BRIEF DESCRIPTION OF THE DRAWINGS

The following description may be further understood with reference to the accompanying drawings in which:

FIG. 1 shows an illustrative diagrammatic view a scanning or marking system of the prior art;

FIG. 2 shows an illustrative diagrammatic view of a virtual laser marking system in accordance with an embodiment of the invention;

FIG. 3A shows an illustrative diagrammatic view of a pattern to be marked, and FIG. 3B shows a real time current that may be employed to mark the pattern shown in FIG. 3A;

FIG. 4 shows an illustrative graphical representation of the angular position and time of a desired mark to be made;

FIG. 5 shows an illustrative graphical representation of the angular position and time of a desired mark to be made as well as an actual mark being made;

FIG. 6 shows an illustrative diagrammatic view of a command and position control sequence for a marking operation;

FIGS. 7A-7C show illustrative diagrammatic views of X position, Y position, Laser-On and Laser-Off timing charts for a desired marking pattern and for a virtual marking pattern in accordance with an embodiment of the invention;

FIG. 8 shows an illustrative diagrammatic representation of a mathematical model for a limited rotation motor system in accordance with an embodiment of the invention; and

FIG. 9 shows an illustrative diagrammatic representation of an optical-mechanical modeling system in accordance with an embodiment of the invention.

The drawings are shown for illustrative purposes only.

DETAILED DESCRIPTION OF THE ILLUSTRATED EMBODIMENTS

In accordance with an embodiment, the invention provides that input commands are provided to a virtual limited rotation motor controller, and the virtual limited rotation motor controller provides output commands to a virtual motor, output shaft and mirror system. A position detection system records the position detection signals at the times that a laser would have been on, and thereby determines a virtual laser marking image.

A computer model, therefore, simulates the laser marking system. The virtual optical marker converts a specified pattern to be marked into the image of a marked pattern together with various real time signals of the marker in marking the given pattern. FIG. 2 shows a functional block diagram of a system in accordance with an embodiment of the invention. The system 30 includes a command generation and laser control unit 32 that provides pattern generation and laser control to translate a given multi-dimensional image into time sequences of mirror position commands together with laser control commands. The command generation and laser control unit 32 generates a command history and the laser control signal as shown at 33. The images of the marking are obtained by combining the laser control signal, beam trajectory, the laser type and the material to be marked.

The system 30 also includes a closed loop actuator system 34 that simulates the dynamic response of the beam-deflecting surfaces actuated by the motors, as well as optical-mechanical models or components 36 are employed to translate the mirror angle into beam trajectories on the target surface. The laser marking system receives customer adjustable scanning parameters via a parameter input unit 38 and a pattern to be marked via a pattern input 40. The closed-loop actuator system 34 provides the motor current, power, and angular position trajectory as shown at 42.

The optical-mechanical components provide laser beam trajectories on mirrors, lenses and the target as shown at 43. The system 30 may also include a laser system 44, and the system provides images of the marked patterns as shown at 48. FIG. 3A shows, for example, an illustrative diagrammatic view of a pattern to be marked 52, and FIG. 3B shows a real time current 54 that may be employed to mark the pattern shown in FIG. 3A.

FIG. 4 shows angular position versus time for a move period 60 to make a mark, followed by a wait period 62. The independent laser control signal is derived as a timed data sequence representing the one and off status of the laser at any given time during the marking process. The motor system model simulates the time responses of the X and Y motor systems subject to the input command generated above. The primary output of the motor system model is the angular displacement of the X and Y mirrors represented by an array of angular position data together with the corresponding time values. Additional output from the motor system includes real time motor current and power dissipation of the motor system. FIG. 5 shows the desired angular position 64 responsive to the marking command shown in FIG. 4, as well as the actual angular position 66.

The optical path of the laser beam may be as shown in FIG. 1 including a laser beam of a given diameter, optical lenses having defined characteristics, and relative positions among the mirrors, laser, lens, and target surface. The light intensity distributions on the mirror, lens and the target surface are also known. The laser beam is modeled by a Gaussian intensity pattern and is propagated along the path of the beam.

By combining the laser control signal and the mirror position trajectories, the laser light intensity profile trajectories on the mirror, lens and target surface may be constructed mathematically. The marked image is then obtained by shape and/or material property changes on the target surface as the result of the interaction between the surface material and laser intensity changes during the marking process.

The customer adjustable scanning parameters may include mark speed (MS), which is the speed of the reference beam during marking, mark delay (MD), which is the wait period at the end of each marking, jump speed (JS), which is the speed of the reference beam during jump, jump delay (JD), which is the wait period at then end of each jump, laser-on delay (L-ON), which is the time difference between the beginning of reference marking and turning the laser beam on, and laser-off delay (L-OFF), which is the time difference between the end of reference marking and turning the laser beam off.

During operation, the specified pattern to be marked is first converted into a sequence of a laser beam positions. Next, the desired laser beam position is translated into angular positions of the X and Y axis mirror using the user specified marking parameters, including marking speed, mark delay, jump speed and jump delay. The desired mirror angular position commands are represented by an array of position values together with the corresponding time values. For example, FIG. 6 shows an illustrative view of a mark of a triangle 68 being made on a marking surface in which the laser starts at the origin, then marks along the x axis only (2), then back along the x axis and up the y axis (3), and then returns to the origin (4).

A pattern to be marked may be defined as the desired trajectory of the mirror positions with its corresponding mark and jump control. For example, pattern data shown in Table 1 below represent a jump to the origin of the field followed by the marking of the triangle 68 as shown in FIG. 6. TABLE 1 X position Y position Control 0 0 Jump 2 0 Mark 1 2 Mark 0 0 Mark

The command generation and laser control unit 32 converts the pattern into the position commands to the scan head using the user defined scanning parameters, i.e., MS, MD, JS, JD, Laser-On and Laser-Off. These commands are represented by a time-stamped sequence of reference mirror positions of both the X and Y axis. The sequence of laser on/off control is also generated using the Laser-On and Laser-Off control parameters. Note that the following relationships exist between the above parameters: MS*MS=MSx*MSx+MSy*MSy and JS*JS=JSx*JSx+JSy*JSy.

The corresponding mathematical equations of the commands and laser control signals are derived as follows. Note that a marking job comprises a series of mark and jump commands. For a jump at time to from point A at (x₁,y₁) to point B at (x₂,y₂) on the making surface, the duration of the operation is T, where T=L/JS+JD, and where L is the distance between A and B and is defined as: L={square root}{square root over ((x ₂ −x ₁)²+(y ₂ −y ₁)²)} The commands to the x and y axis may now be defined as functions of time X(t) and Y(t) $\begin{matrix} {{X(t)} = \left\{ \begin{matrix} {{JSx}*\left( {t - t_{0}} \right)} & {{when}\quad\left( {t - t_{0}} \right)\quad\text{<=}\quad{L/{JS}}} \\ {{JSx}*{L/{JS}}} & {{{when}\quad{L/{JS}}} < {\left( {t - t_{0}} \right)\quad\text{<=}\quad T}} \end{matrix} \right.} \\ {{Y(t)} = \left\{ \begin{matrix} {{JSy}*\left( {t - t_{0}} \right)} & {{when}\quad\left( {t - t_{0}} \right)\quad\text{<=}\quad{L/{JS}}} \\ {{JSy}*{L/{JS}}} & {{{when}\quad{L/{JS}}} < {\left( {t - t_{0}} \right)\quad\text{<=}\quad T}} \end{matrix} \right.} \end{matrix}$

The speed of x command JSx and that of y command JSy are solutions to the following equations: JSx ² +JSy ² =JS ² and |x ₂ −x ₁ |/JSx=|y ₂ −y ₁ |/JSy

The laser control signal LASER(t) is given by ${{LASER}(t)} = \left\{ \begin{matrix} 1 & {{{when}\quad 0} < {\left( {t - t_{0}} \right)\quad\text{<=}\quad{Laser}\text{-}{OFF}}} \\ 0 & {{{when}\quad{Laser}\text{-}{OFF}} < {{\left( {t - t_{0}} \right)\quad\text{<=}\quad T} + {{Laser}\text{-}{ON}}}} \end{matrix} \right.$ where Laser-ON and Laser-OFF are laser on and laser off period, respectively.

Similarly, for a mark at time to from point A at (x₁,y₁) to point B at (x₂,y₂) on the making surface, the duration of the operation is T, where T=L/MS+MD, wherein L is the distance between A and B and is defined as: L={square root}{square root over ((x ₂ −x ₁)²+(y ₂ −y ₁)²)}

The commands to the x and y axis may now be defined as functions of time X(t) and Y(t) $\begin{matrix} {{X(t)} = \left\{ \begin{matrix} {{MSx}*\left( {t - t_{0}} \right)} & {{when}\quad\left( {t - t_{0}} \right)\quad\text{<=}\quad{L/{MS}}} \\ {{MSx}*{L/{MS}}} & {{{when}\quad{L/{MS}}} < {\left( {t - t_{0}} \right)\quad\text{<=}\quad T}} \end{matrix} \right.} \\ {{Y(t)} = \left\{ \begin{matrix} {{MSy}*\left( {t - t_{0}} \right)} & {{when}\quad\left( {t - t_{0}} \right)\quad\text{<=}\quad{L/{MS}}} \\ {{MSy}*{L/{JS}}} & {{{when}\quad{L/{MS}}} < {\left( {t - t_{0}} \right)\quad\text{<=}\quad T}} \end{matrix} \right.} \end{matrix}$

The speed of x command MSx and that of y command MSy are solutions to the following equations MSx ² +MSy ² =MS ² and |x ₂ −x ₁ |/MSx=|y ₂ −y ₁ |/MSy The laser control signal LASER(t) is given by ${{LASER}(t)} = \left\{ \begin{matrix} 0 & {{{when}\quad 0} < {\left( {t - t_{0}} \right)\quad\text{<=}\quad{Laser}\text{-}{ON}}} \\ 1 & {{{when}\quad{Laser}\text{-}{ON}} < {{\left( {t - t_{0}} \right)\quad\text{<=}\quad T} + {{Laser}\text{-}{OFF}}}} \end{matrix} \right.$

FIGS. 7A-7C show the commands used to form the mark shown in FIG. 6. FIG. 7A shows the command 70 along the x-axis over the marking time period, FIG. 7B shows the command 72 along the y-axis over the marking time period, and FIG. 7C shows the command 74 the Laser-On and Laser-Off command along the marking time period.

The positions of the X and Y mirrors are generated using the closed-loop system model of the motor system. There are different ways of representing the system model for the purpose of simulating the time response of the optical scanners. These include a set of differential/difference equations, transfer functions, state space matrices, frequency response data, and graphical system models such as the model discussed below.

In particular and as shown in FIG. 7A, the laser command sequence along the x axis initially jumps to zero (as shown at 72) and then waits for a jump delay 74. The system then requests a marking as shown at 76) in the x direction at the mark speed. Then a mark delay 78 occurs, followed by marking 80 in the reverse direction along the x axis. Another mark delay 82 occurs, followed by continue marking 84 in the x direction at the marking speed.

The laser command sequence along the y axis initially jumps to zero (as shown at 92) and then waits for a jump delay 94 as shown in FIG. 7B. The system then requests a marking as shown at 96) in the y direction for at the mark speed. Then a mark delay 98 occurs, followed by marking 100 in the reverse direction along they axis. Another mark delay 102 occurs, followed by continue marking 104 in they direction at the marking speed. The Laser-On signal will also be followed by a short delay as shown at 112 in FIG. 7C, and the Laser-Off signal will be followed by a short delay as shown at 114 in FIG. 7C.

FIG. 7A also shows simulated time responses of a particular limited rotation motor system responsive to the x axis and y axis commands shown at 70 and 90. The simulated time response for the x axis is shown at 120 and the simulated time response for they axis is shown at 122.

The mathematical model of the closed-loop motor system 34 may either be derived from physical laws or be identified from real system measurements, or may be formed as a combination of both. The purpose is to simulate the dynamic response of the motor system when commanded with the command signals generated by the command generation and laser control system 32. FIG. 8, for example, shows an illustrative view of a mathematical model 120 of the limited rotation motor system in accordance with an embodiment. The model 120 includes a representation of a controller 122 and a representation of the motor 124. The controller 122 includes a proportional unit 126, an integral unit 128, and a derivative unit 130. The controller 122 receives an input command signal as well as a feedback signal. The motor 124 receives the output of the controller and provides mirror positions. A position transducer is employed in the motor 124 to provide position feedback to the input of the controller 122 as shown.

A limited rotation motor, for example, may be described by the following differential equation {umlaut over (x)}=k*i where {umlaut over (x)} is the angular displacement of the mirror, i is the driving current, and k is the torque constant of the motor. An equivalent transfer function is X(s)/I(s)=k/s ² where X(s) and I(s) are the Laplace transforms of position x and i, respectively.

The optical-mechanical components 36 convert a given mirror position into the position of the laser beam on the marking surface. This is done by modeling the laser beam from the laser source as a set of parallel lines in the space. The mirrors are then modeled as the planes in the space. First, the beam landing on the focusing lens is calculated as lines reflected by two planes defined by the x and y mirror positions. Next, beam position and shape on the marking surface is calculated using the optical equations that govern the lens used. For example, for standard lenses, the in and out beam follows the cosine rule, and the F-theta lenses, the out beam angle is proportional to the angle of the in beam. Laser control is used in determining whether or not a beam spot should be formed on the marking surface.

As an example of how the beam position is determined, consider the following case with two mirrors, M1 and M2, and incoming beam L1, output beam L3. First, we represent the mirrors by planes in the space as M1 and M2, and incoming beam L1 as straight line in the space. The problem of finding the beam position of output beam L3 with a given mirror position becomes deriving the line equation of the line L3. Let the equation of mirror plane M1 be ${\begin{matrix} {x - x_{1}} & {y - y_{1}} & {z - z_{1}} \\ {x - x_{2}} & {y - y_{2}} & {z - z_{2}} \\ {x - x_{3}} & {y - y_{3}} & {z - z_{3}} \end{matrix}} = 0$ where (x₁,y₁,z₁), (x₂,y₂,z₂), and(x₃,y₃,z₃) are three known points in space that plane M1 passes. The equation of incoming beam L1 may be $\frac{x - x_{4}}{x_{5} - x_{4}} = {\frac{y - y_{4}}{y_{5} - y_{4}} = \frac{y - y_{4}}{y_{5} - y_{4}}}$ where (x₄,y₄,z₄) and (x₅,y₅,z₅) are the two know points that line L1 passes.

As shown at 140 in FIG. 9, the location on the mirror M1 where beam L1 intersect, therefore, is determined by the intersection point B between plane M1 and line L1 by solving the following equations $\begin{matrix} {{\begin{matrix} x & y & z & 1 \\ x_{1} & y_{1} & z_{1} & 1 \\ x_{2} & y_{2} & z_{2} & 1 \\ x_{3} & y_{3} & z_{3} & 1 \end{matrix}} = 0} \\ {\begin{bmatrix} x \\ y \\ z \end{bmatrix} = \begin{bmatrix} {x_{4} + {\left( {x_{4} - x_{5}} \right)*t}} \\ {y_{4} + {\left( {y_{4} - y_{5}} \right)*t}} \\ {z_{4} + {\left( {z_{4} - z_{5}} \right)*t}} \end{bmatrix}} \\ {where} \\ {t = \frac{\begin{matrix} 1 & 1 & 1 & 1 \\ x_{1} & x_{2} & x_{3} & x_{4} \\ y_{1} & y_{2} & y_{3} & y_{4} \\ z_{1} & z_{2} & z_{3} & z_{4} \end{matrix}}{\begin{matrix} 1 & 1 & 1 & 0 \\ x_{1} & x_{2} & x_{3} & {x_{5} - x_{4}} \\ y_{1} & y_{2} & y_{3} & {y_{5} - y_{4}} \\ z_{1} & z_{2} & z_{3} & {z_{5} - z_{4}} \end{matrix}}} \end{matrix}$

The reflection point of A on M1, A′ is calculated by $\begin{bmatrix} x^{\prime} \\ y^{\prime} \\ z^{\prime} \end{bmatrix} = {\begin{bmatrix} x \\ y \\ z \end{bmatrix} - {2\quad D\quad n}}$ where D is the distance between point A and plane M1 and n is the directional vector of plane M1, which can be derived directly from the equation of M1.

Once points B and A′ are calculated, the reflecting line L2 is defined by the coordinates of B and A′ as shown at 142 in FIG. 9. Similar operations are performed, and the beam L3 shown at 144 may be calculated by points C and B′, as shown in FIG. 9.

The trajectory of the laser spot on the marking surface is then used to form the image of markings. This is done by linear superposition of beam spots of all the beams landed on a given area of the marking surface during the entire process of marking. Mathematically, this is done by a multidimensional convolution. For instance, in 2D case, we can represent the intensity distribution of a beam by a matrix with elements represent the intensity of beam at the position corresponding to the indexes of each element, $D = \begin{bmatrix} 0 & 1 & 0 \\ 1 & 1 & 1 \\ 0 & 1 & 0 \end{bmatrix}$ With the given trajectory of the center of the beams, P=[1 1 1] the trajectory of the laser beam intensity may be calculated as ${{conv}\left( {D,P} \right)} = \begin{bmatrix} 0 & 1 & 1 & 1 & 0 \\ 1 & 2 & 3 & 2 & 1 \\ 0 & 1 & 1 & 1 & 0 \end{bmatrix}$

The above virtual marking systems may be employed in limited rotation motors in order to evaluate ongoing performance of the limited rotation motor systems when used, for example, in specific applications such as laser marking.

Those skilled in the art will appreciate that numerous modifications and variations may be made to the above disclosed embodiments without departing from the spirit and scope of the invention. 

1. A virtual marking system for simulating the performance of a limited rotation motor system, said virtual marking system comprising: command generation means for receiving data representative of a pattern to be marked and for providing a set of commands for marking the pattern to be marked; limited rotation motor system means for receiving the set of commands for marking the pattern to be marked and for providing optical element response signals that are representative of virtual positions of an optical element; and optical-mechanical modeling means for receiving the optical element response signals and for providing a virtual image of the pattern to be marked.
 2. The virtual marking system as claimed in claim 1, wherein said command generation means also receives a set of adjustable parameters regarding the virtual marking system.
 3. The virtual marking system as claimed in claim 2, wherein said parameters include data that is representative of mark speed, mark delay, jump speed, jump delay, laser-on delay, and laser-off delay.
 4. The virtual marking system as claimed in claim 1, wherein said limited rotation motor system provides data representative of motor current.
 5. The virtual marking system as claimed in claim 1, wherein said limited rotation motor system provides data representative of motor power.
 6. The virtual marking system as claimed in claim 1, wherein said limited rotation motor system provides data representative of angular position.
 7. The virtual marking system as claimed in claim 1, wherein said limited rotation motor system provides data representative of trajectory.
 8. The virtual marking system as claimed in claim 1, wherein said optical-mechanical modeling means provides a graphic representation of the virtual image of the pattern to be marked.
 9. The virtual marking system as claimed in claim 1, wherein said limited rotation motor system means includes mathematical modeling of an X scanner motor and a Y scanner motor.
 10. The virtual marking system as claimed in claim 1, wherein said virtual marking system is employed in a limited rotation motor system.
 11. The virtual marking system as claimed in claim 10, wherein said limited rotation motor system is used for actual laser marking.
 12. A virtual marking system for simulating the performance of an X-Y limited rotation motor system, said virtual marking system comprising: command generation means for receiving data representative of a pattern to be marked in two dimensions and for providing a set of commands for marking the pattern to be marked; X-limited rotation motor system means for receiving the set of x direction commands for marking the pattern to be marked and for providing x-direction optical element response signals that are representative of virtual positions of an optical element; Y-limited rotation motor system means for receiving the set of y-direction commands for marking the pattern to be marked and for providing y-direction optical element response signals that are representative of virtual positions of an optical element; and optical-mechanical modeling means for receiving the x-direction optical element response signals and the y-direction optical element response signals, and for providing a virtual image of the pattern to be marked.
 13. The virtual marking system as claimed in claim 12, wherein said command generation means also receives a set of adjustable parameters regarding the virtual marking system.
 14. The virtual marking system as claimed in claim 13, wherein said parameters include data that is representative of mark speed, mark delay, jump speed, jump delay, laser-on delay, and laser-off delay.
 15. The virtual marking system as claimed in claim 12, wherein said limited rotation motor system provides data representative of motor current.
 16. The virtual marking system as claimed in claim 12, wherein said limited rotation motor system provides data representative of motor power.
 17. The virtual marking system as claimed in claim 12, wherein said limited rotation motor system provides data representative of angular position.
 18. The virtual marking system as claimed in claim 12, wherein said limited rotation motor system provides data representative of trajectory.
 19. The virtual marking system as claimed in claim 12, wherein said optical-mechanical modeling means provides a graphic representation of the virtual image of the pattern to be marked.
 20. The virtual marking system as claimed in claim 12, wherein said limited rotation motor system means includes mathematical modeling of an X scanner motor and a Y scanner motor.
 21. A method of simulating the performance of a limited rotation motor system, said method comprising the steps of: receiving data representative of a pattern to be marked; providing a set of commands for marking the pattern to be marked; receiving the set of commands for marking the pattern to be marked; providing optical element response signals that are representative of virtual positions of an optical element; receiving the optical element response signals; and providing a virtual image of the pattern to be marked. 